package cn.detu.ln.service;

import cn.detu.ln.entity.Selection;
import cn.detu.ln.utils.RestUtil;

/**
 * @author :ln
 * @version : 1.0
 * @Project : education_backend
 * @Package : cn.detu.ln.service
 * @ClassName : SelectionService.java
 * @createTime : 2023/3/26 13:57
 * @Description :
 */
public interface SelectionService {
    RestUtil selectAll();
    Selection querySelectionById(Integer selId);
    Selection querySelectionByStuId(Long stuNum);
    // 通过选课号实现删除
    RestUtil selectionDelete(Integer selId);
    // 通过课程号查找当前选课id
    RestUtil selectSelIdByCouId(Integer couId);
    // 教师根据课程号实现模糊查询
    RestUtil querySelectionByCouIdPage(Integer current,Integer rows,Integer couId);
    // 教师查看是否有选择过此课程的选课记录
    RestUtil judgeSelectionByCouId(Integer couId);

    RestUtil selectionUpdate(Selection selection);

    RestUtil selectionInsert(Selection selection);
    // 按照课程性质实现模糊查询
    RestUtil querySelectionByCourseNaturePage(Integer current, Integer rows,String search);
    // 按课程Id + 学号模糊查询
    RestUtil querySelCourseByIdPage(Integer current, Integer rows,Long stuNum, String search);
    // 按课程名称 + 学号模糊查询
    RestUtil querySelCourseByPage(Integer current, Integer rows,Long stuNum, String search);
    // 根据学号查询当前选课记录
    RestUtil querySelectionByStuNumPage(Integer current, Integer rows, String search);
    RestUtil querySelectionByPage(Integer current, Integer rows,String search);

    // 通过couId判断是否已经选过当前课程
    RestUtil selectSelectionByCouId(Integer couId);

}
